﻿using AMS.DataAccess.Interfaces;
using AMS.DataAccess.Sql;
using AMS.DataAccess.Sys;
using AMS.DataAccess.Sys.Interfaces;
using AMS.DataAccess.Trademark;
using AMS.DataAccess.Trademark.Interfaces;

/// <summary>
/// Summary description for ManagerFactory
/// TODO: replace this class with XML configurations.
/// </summary>
public class ManagerFactory
{
    private ManagerFactory()
    {
    }

    public static ICustomerManager CreateCustomerManager()
    {
        return new CustomerManager();
    }

    public static IContactorManager CreateContactorManager()
    {
        return new ContactorManager();
    }

    public static IProvinceCityManager CreateProvinceManager()
    {
        return new ProvinceCityManager();
    }

    public static ICaseBasicInfoManager CreateCaseBasicInfoManager()
    {
        return new CaseBasicInfoManager();
    }

    public static AMS.DataAccess.Sys.Interfaces.IUserManager CreateUserManager()
    {
        return new AMS.DataAccess.Sys.UserManager();
    }

    public static ITrademarkManager CreateTrademarkManager()
    {
        return new TrademarkManager();
    }

    public static ICaseContactorManager CreateCaseContactorManager()
    {
        return new CaseContactorManager();
    }

    public static ICaseApplicantManager CreateCaseApplicantManager()
    {
        return new CaseApplicantManager();
    }

    public static ITaskManager CreateTaskManager()
    {
        return new TaskManager();
    }

    public static IRecvFileManager CreateRecvFileManager()
    {
        return new RecvFileManager();
    }

    public static IIndexProvider CreateIndexProvider()
    {
        return new IndexPrivider();
    }
}
